#include "delay.h"

// Clock 200kHz
void delay_us_5(void){
	//Nothing
}

// Clock 100kHz
void delay_us_10(void){
	unsigned char i;

	i = 2;
	while (--i);
}

// Clock 50kHz
void delay_us_20(void)		//@11.0592MHz
{
	unsigned char i;

	_nop_();
	i = 6;
	while (--i);
}

// Clock 1kHz    1000个时钟周期
void delay_1ms(void) //@11.0592MHz
{
	unsigned char i, j;

	_nop_();
	i = 2;
	j = 199;
	do {
		while (--j)
			;
	} while (--i);
}

// Clock 1Hz     1000000个时钟周期
void delay_1s(void)
{
	unsigned char i, j, k;

	_nop_();
	i = 8;
	j = 1;
	k = 243;
	do {
		do {
			while (--k)
				;
		} while (--j);
	} while (--i);
}

void delay_us(uint16_t n)
{
	uint16_t i;
	for (i = 0; i < n; i++) {
		;
	}
}

void delay_ms(uint16_t n)
{
	uint16_t i;
	for (i = 0; i < n; i++) {
		delay_1ms();
	}
}

void delay_ss(uint16_t n)
{
	uint16_t i;
	for (i = 0; i < n; i++) {
		delay_1s();
	}
}
